package utility;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Scanner;

public class FileHandler {

    private static final boolean DEBUGMODE = false;

    /**
     *Metoden skriver til en fil med den kaldte titel og tekst
     * @param title
     * @param lineArr
     * @throws IOException
     */
    public static void writeFile(String title, String[] lineArr) throws IOException {
        FileWriter fw = new FileWriter(title);
        PrintWriter pw = new PrintWriter(fw);

        for (int i = 0; i < lineArr.length; i++) {
            pw.println(lineArr[i]);
            if (DEBUGMODE) {
                System.out.println(lineArr[i]);
            }
        }
        pw.close();
    }

    /**
     * Metoden læser fra en fil med den kaldte titel ved hjælp af en Scanner og 
     * en ArrayList<String>
     * @param url
     * @return ArrayList<String>
     * @throws FileNotFoundException
     */
    public static ArrayList<String> readFile(String url) throws FileNotFoundException {
        Scanner fileScanner = new Scanner(new File(url));
        ArrayList<String> stringList = new ArrayList<>();

        while (fileScanner.hasNext()) {
            stringList.add(fileScanner.nextLine());
            if (DEBUGMODE) {
                System.out.println(stringList.get(stringList.size() - 1));
            }
        }
        fileScanner.close();
        return stringList;
    }

}
